package com.xr.maintain.util;

import com.xr.maintain.entity.mysql.*;
import com.xr.maintain.mapper.mysql.*;
import com.xr.maintain.mapper.oracle.*;
import com.xr.maintain.service.TargetFoodService;

/**
 * Created on 2021/6/7
 * @author qiao
 * @Desc:
 */
public enum TypeClassEnum {


    company {
        @Override
        public String get(TargetFoodService targetFoodService) {
            return targetFoodService.selectAndInsert(CompanyOracleMapper.class, CompanyMapper.class, Company.class);
        }
    },
    aptitudeBase {
        @Override
        public String get(TargetFoodService targetFoodService) {
            return targetFoodService.selectAndInsert(AptitudeBaseOracleMapper.class, AptitudeBaseMapper.class, AptitudeBase.class);
        }
    },
    auditrecord {
        @Override
        public String get(TargetFoodService targetFoodService) {
            return targetFoodService.selectAndInsert(AuditrecordOracelMapper.class, AuditrecordMapper.class, Auditrecord.class);
        }
    },
    companyTestitems {
        @Override
        public String get(TargetFoodService targetFoodService) {
            return targetFoodService.selectAndInsert(CompanyTestitemsOracleMapper.class, CompanyTestitemsMapper.class, CompanyTestitems.class);
        }
    },
    basicDicInfo {
        @Override
        public String get(TargetFoodService targetFoodService) {
            return targetFoodService.selectAndInsert(BaseDicInfoOracleMapper.class, BaseDicInfoMapper.class, BasicDicInfo.class);
        }
    },
    instrument {
        @Override
        public String get(TargetFoodService targetFoodService) {
            return targetFoodService.selectAndInsert(InstrumentOracleMapper.class, InstrumentMapper.class, Instrument.class);
        }
    },
    kycginfo {
        @Override
        public String get(TargetFoodService targetFoodService) {
            return targetFoodService.selectAndInsert(KycgInfoOracleMapper.class, KycgInfoMapper.class, KycgInfo.class);
        }
    },
    laboratory {
        @Override
        public String get(TargetFoodService targetFoodService) {
            return targetFoodService.selectAndInsert(LaboratoryOracleMapper.class, LaboratoryMapper.class, Laboratory.class);
        }
    },
    pca {
        @Override
        public String get(TargetFoodService targetFoodService) {
            return targetFoodService.selectAndInsert(PcaOracleMapper.class, PcaMapper.class, Pca.class);
        }
    },
    personnels {
        @Override
        public String get(TargetFoodService targetFoodService) {
            return targetFoodService.selectAndInsert(PersonnelsOracleMapper.class, PersonnelsMapper.class, Personnels.class);
        }
    },
    question {
        @Override
        public String get(TargetFoodService targetFoodService) {
            return targetFoodService.selectAndInsert(QuestionOracleMapper.class, QuestionMapper.class, Question.class);
        }
    },
    user {
        @Override
        public String get(TargetFoodService targetFoodService) {
            return targetFoodService.selectAndInsert(UserOracleMapper.class, UserMapper.class, User.class);
        }
    },
    resource {
        @Override
        public String get(TargetFoodService targetFoodService) {
            return targetFoodService.selectAndInsert(ResourceOracleMapper.class, ResourceMapper.class, Resources.class);
        }
    };

    public abstract String get(TargetFoodService targetFoodService);

}
